The invention relates to modulation coding in data transmissions systems.
The transmission of digital information through a channel of a system such as a data storage system often requires the mapping of an unconstrained sequence of user information bits to a coded representation which is constrained to bit sequences with characteristics needed by the channel for reliable transmission. For example, in channels in which a bit clock is derived from the data stream itself, some minimum number of bit transitions are required in a window of transmitted bits to provide timing information for clock extraction. The maximum number of consecutive like bits allowed between bit transitions is referred to as the “k constraint”.
One conventional encoding scheme maps vectors of contiguous unencoded data bits to somewhat longer vectors of coded data. This mapping thus uses a longer vector to represent the uncoded data while at the same time avoiding the use of bit sequences that violate the constraints of the channel.
Another approach “scrambles” the data, i.e., exclusive-OR's the data with a pseudorandom number sequence, and uses the scrambled data otherwise unencoded. This technique relies on statistical adherence of random data to code constraints and, in the infrequent event of a coding violation, changes the data where needed to preserve code constraints.